牛逼!用文言文来编程,97 年 CMU 本科生火遍全网!
以下文章来源于机器之心 ,作者Synced
公众号关注 “GitHubDaily”
设为 “星标”,每天带你逛 GitHub!
转自机器之心,参与:思、一鸣
「昔者苍颉作书,而天雨粟,鬼夜哭」,汉字的出现,诞生了世界上一个伟大的文明。而编程语言的出现,让人类和计算机产生了真正的联系,推动了现代文明的发展。 那么,将古代汉语和编程语言结合又会产生怎样的火花?最近,GitHub 上出现了一个文言文做代码的项目,几乎是世界上第一门文言文编程语言(当然,底层还是转换成 Python 或 JavaScript 运行)。
在尧舜时代,人们使用结绳和数手指来计算。当时怎么能够预料到,几百代人之后计算机的巧妙呢!计算机比鲁班(公输盘)的木鸢更加精巧,比诸葛亮(武侯)的木牛流马更好。此外,编程语言数量众多,如同《天官书》记录的星宿一般多,又比《山海经》中记录的飞禽走兽还要奇特。Go(鼠)、Rust(蟹)、Ruby(鑽)、Fishshell(鱼)因速度而出名。Python(蛇)、Php(象)、Perl(骆)和 JavaScript(犀)则各有独特之处。我这才理解到,为什么鬼会夜哭,天上会下粟雨。
(注:传仓颉造字后,鬼神啼哭,天降粟雨)
但以往从未有人使用过文言文进行编程。这并不是传承文脉、保护文心的好方法,所以我才产生了用文言文编程的想法。我目前还太年轻,读过的书也没有破万卷。如今身处遥远的国家(美国),也很久没有接触中文了。但是我一直对文学很有兴趣,编写的程序有时候也得到人们的一些肯定。正如王希孟和庄子一般,并不因为年轻或者知识的浩瀚无涯而退缩,于是写下了这些话。
(注:王希孟,北宋画家,18岁画成传世名作《千里江山图》)
我既没有像李贺那样呕心沥血,也没有像李商隐那样口角流沫(形容读书勤奋)。项目完成后,我将继续以干将铸剑的精神勉励自己,带着越王卧薪尝胆的精神继续向前。我自己虽想效仿《算经十书》的笔法,只是遗憾没有唐宋八大家那样淋漓的文笔。正如庾信在《哀江南赋》所写:「陆机听了心甘情愿地拍掌;张衡见了将轻视它也是理所当然」(意指如果被人嘲笑,也是理所当然,我不会太过介意)。
尽管这项目只有覆瓮的价值(一点微小的工作),但是还有完善的空间。虽然没有像吕不韦那样有一字千金的本钱,但是我对交流的渴望是一样的。
这也正是开源的精神内核,我们以此互相勉励吧。
吾有一數。曰三。名之曰「甲」。
為是「甲」遍。
吾有一言。曰「「問天地好在。」」。書之。
云云。
var n = 3;
for (var i = 0; i < n; i++) {
console.log("問天地好在");
}
a = 3
for i in range(a):
print("問天地好在")
吾有一數曰三名之曰「甲」為是「甲」遍吾有一言曰「「問天地好在」」書之云云
def fei_seq(yin):
tou = 0
wei = 1
ji = 1
guo = 0
if yin == 0:
guo = yin
if yin == 1:
guo = yin
while True:
if ji >= yin:
break
ans_ = tou +wei
guo = ans_
tou = wei
wei = guo
ans_ = ji + 1
ji = ans_
return guo
print(fei_seq(7))